草庐IT

Java Event-Dispatching Thread 解释

全部标签

python - 如何捕获 Python 解释器的输出并在 Text 小部件中显示?

我有一个带有PyQt的Python程序,旨在在Windows上运行。该程序进行大量操作并打印大量信息。但是因为我想卡住它并且不希望出现提示屏幕,所以我希望所有这些信息都出现在主应用程序中,在QTextEdit左右。我怎样才能使程序工作,以便它从解释器获取输出并同时在textEdit上显示它,就像它在真正的解释器上一样? 最佳答案 我假设“解释器的输出”是指写入控制台或终端窗口的输出,例如使用print()生成的输出。Python产生的所有控制台输出都被写入程序的输出流sys.stdout(正常输出)和sys.stderr(错误输出,

python - np.unravel_index 的直观解释是什么?

和标题说的差不多。我已经阅读了文档并且我已经使用了一段时间的功能,但我无法辨别这种转换的物理表现是什么。 最佳答案 计算机内存是线性寻址的。每个存储单元对应一个数字。可以根据基址(即其第一个元素的内存地址)和项目索引来寻址内存块。例如,假设基地址为10,000:itemindex0123memoryaddress10,00010,00110,00210,003要存储多维block,它们的几何形状必须以某种方式适应线性内存。在C和NumPy中,这是逐行完成的。一个2D示例是:|0123--+----------------------

python - 从 C/C++ 程序调用的多个操作系统线程上的多个独立嵌入式 Python 解释器

在C/C++applicationiswelldocumented中嵌入Python解释器.在从C/C++应用程序调用的多个操作系统线程(即同一进程中的一个操作系统线程上的一个解释器)上运行多个python解释器的最佳方法是什么?此类应用程序还可能存在与内存碎片和limitationsofPy_Finalize()相关的问题。.一种这样的方法可以是:Python线程,因此GIL在pyconfig.h中被禁用以保持简单(#undefWITH_THREAD)Python解释器源代码的所有可变全局变量都移至通过线程本地存储引用的堆分配结构(引用:PythononaPhone)。我的问题是:有

python - 在 python 解释器中 Hook 全局名称查找

事情是这样的,我有一个代理保存对远程模块的引用,我将其中一些代理放入sys.modules以便我可以像使用本地模块一样使用它。但是其他一些对象被放在远程环境的__builtin__模块中(比如一个方便调试或引用的魔术变量)。我不想像conn.__builtin__.var这样引用这些变量,我必须替换本地__builtin__(这似乎不适用于替换sys.modules['__builtin__']或Hook全局名称查找规则。如何?对于一个模块,你可以重载一个getattr来做到这一点。但是在像IPython这样的交互式解释器中,谁是主要模块或如何做到这一点?更新:正如@NizamMoha

线程 Thread-1 中的 Python 异常(很可能在解释器关闭期间引发)?

我和我的friend一直在从事一个大型项目,以学习Python和PyGame并从中获得乐趣。基本上它是一个小村庄的人工智能模拟。我们想要一个昼夜循环,所以我找到了一种使用numpy更改整个表面颜色的巧妙方法(特别是交叉淡入淡出教程)-http://www.pygame.org/docs/tut/surfarray/SurfarrayIntro.html我在代码中实现了它,它可以工作,但速度非常慢,比如LearningaboutQueuemoduleinpython(howtorunit)我花了大约15分钟来制作一个基本系统,但一旦我运行它,窗口就会关闭并显示Exceptioninthr

python - 在python中作为命令行参数传递的数字不被解释为整数

我熟悉C,并且已经开始在python中进行实验。我的问题是关于sys.argv命令。我读过它用于命令行解释器,但是当尝试执行一个简单的程序时,我没有得到我期望的结果。代码:importsysa=sys.argv[1]b=sys.argv[2]printa,bprinta+b输入:pythonmySum.py100200输出:100200100200当我添加两个参数时,它们被连接起来,而不是两个值被添加在一起。似乎这些值被视为字符串。如何将它们解释为数字? 最佳答案 您可以使用int()将参数转换为整数importsysa=int(s

python - 如何更改 gdb 使用的 Python 解释器?

我使用的是ubuntu14.04,其中python3是默认系统包。我想用gdb调试Python2.7程序,但是我好像遇到了这个问题:当我在gdb中时,使用py命令会将我置于解释器中,因此我在解释器中运行了这些命令:首先我检查解释器版本:(gdb)py>importsys>print(sys.version)>end3.4.0(default,Apr112014,13:08:40)[GCC4.8.2]然后我检查正在使用的解释器可执行文件(gdb)py>importsys>print(sys.executable)>end/usr/bin/python(gdb)然后在bash中,我检查解释

python - 如何在 PyQT 小部件中嵌入 Python 解释器

我希望能够从我的python应用程序中调出一个交互式python终端。我的程序中的一些(但不是全部)变量需要暴露给解释器。目前我使用子类和修改的QPlainTextEdit并将那里的所有“命令”路由到eval或exec,并跟踪字典中的单独命名空间。然而,必须有一个更优雅和健壮的方式!怎么样?这是一个做我想做的事的例子,但它是用IPython和pyGTK...http://ipython.scipy.org/moin/Cookbook/EmbeddingInGTK以下是我目前拥有的。但是有很多极端案例,我可能错过了一些。它很慢,尝试大打印循环...它必须是一种更简单且不易出错的方式,..

interpreter - 当我在 Python 解释器中按向上或向下箭头键时,为什么会得到 ^[[A 或 ^[[B 而不是历史记录?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonshell:Arrowkeysdonotworkonremotemachine我不知道为什么历史记录在Python2.7.2解释器中不起作用。我得到每个箭头键的奇怪字符组。这不会在终端中发生。顺便说一句,我在Ubuntu10.04上。这是这个hell的屏幕截图:如何恢复按向上和向下箭头键获取命令历史记录的功能? 最佳答案 看起来好像您正在使用源代码构建。在您的发行版上安装libreadline-dev或等效包后,您似乎需要重新构建Python。

python - 如何在 Emacs 中运行 python 解释器?

我刚刚下载了GNUemacs23.4,我已经在Windows7中安装了python3.2。我一直在使用PythonIDLE来编辑python文件。问题是我可以用Emacs编辑python文件,但我不知道如何在Emacs中运行python解释器。当我点击“切换到解释器”时,它会显示“正在搜索程序:没有这样的文件或目录,python”有人说我需要对.emacs文件进行一些更改,但我不知道在哪里寻找。而且我非常缺乏经验,刚刚开始学习编程。我不熟悉常用的术语。我一直在寻找解决方案,但我在互联网上找到的大多数文章都让我感到困惑。所以问题是:如何在Emacs中运行python解释器?是否有不同类型